package 小测试;

import java.util.Arrays;

/**
 * Created by Administrator on 2017/8/4.
 */
//将一个整数提取为一个数组
public class 整数转换成数组 {
    public static void main(String[] args) {
       int num=123456789;
       int numLength=getNumLength(num);
       System.out.println(num+"的长度："+numLength);
        int[] arr=transferNumToArray(num);
        System.out.println(num+"转换成的数组："+ Arrays.toString(arr));
    }

    private static int[] transferNumToArray(int num) {
        int numLength = getNumLength(num);
        int[] arr = new int[numLength];
/*        while(num>0){
            arr[numLength-1]=num%10; //提取最高位
            num/=10; //变更整数
            numLength--; //移动索引
        }*/
        for(int i=numLength-1;i>=0;i--){
            arr[i]=num%10; //提取最高位
            num/=10; //变更整数
        }
        return arr;
    }

    //提取一个整数的长度
    private static int getNumLength(int num) {
        int numLength=1;//存储一个整数的长度(存储的这一位为整数位)
        while (num/10!=0){
            numLength++;
            num=num/10;
        }
        return numLength;
    }
}
